package com.g7.figmaapi.web.api.figma.domain.entity;

import lombok.Data;

import java.util.List;
import java.util.Map;

/**
 * @author: taoxiangqian
 * @explain:
 * @since: 2023/11/10 17:35
 */
@Data
public class FigmaFile {
    private Document document;
    private Map<String, Component> component;
    private Map<String, ComponentSet> componentSets;
    private Integer schemaVersion;
    private Map<String, Style> styles;
    private String name;
    private String lastModified;
    private String thumbnailUrl;
    private String version;
    private String role;
    private String editorType;
    private String linkAccess;

    private String mainFileKey;
    private List<Branches> branches;
}

@Data
class Document {
    private String id;
    private String name;
    private Boolean visible;
    private String type;
    private String scrollBehavior;
}

@Data
class Component {
    private String key;
    private String name;
    private String description;
    private Boolean remote;
    private List<DocumentationLinks> documentationLinks;

}

@Data
class DocumentationLinks {
    private String uri;
}

@Data
class ComponentSet {
    private String key;
    private String name;
    private String description;
    private Boolean remote;
    private List<DocumentationLinks> documentationLinks;
}

@Data
class Style {
    private String key;
    private String name;
    private String description;
    private Boolean remote;
    private String styleType;
}

@Data
class Branches {
    private String key;
    private String name;
    private String thumbnail_url;
    private String last_modified;
    private String link_access;
}